package com.ufaud.ais.sys.dao;

import com.ufaud.ais.pub.dao.IGenericCRUDDao;
import com.ufaud.ais.sys.entity.Department;

public interface IDepartmentDao extends IGenericCRUDDao<Department, Long> {
	
	/**
	 * 功能: 在session未关闭时初始化部门负责人
	 * @author 林可  2010-7-20 下午04:35:44
	 * @param dept
	 */
	void initDeptManager(Department dept);

	/**
	 * 功能:  在session未关闭时初始化部门负责人，并递归到子部门
	 * @author 林可  2010-7-20 下午04:36:17
	 * @param dept
	 */
	void recInitDeptManager(Department dept);
	
	/**
	 * 功能: 在session未关闭时初始化子部门
	 * @author 林可  2010-7-20 下午04:38:40
	 * @param dept
	 */
	void initSubDept(Department dept);
	
	/**
	 * 功能: 在session未关闭时递归初始化所有子部门
	 * @author 林可  2010-7-20 下午04:38:40
	 * @param dept
	 */
	void recInitSubDept(Department dept);

	/**
	 * 功能: 在session未关闭时初始化上级部门
	 * @author 林可  2010-7-20 下午04:38:40
	 * @param dept
	 */
	void initSuperDept(Department dept);
	
}
